約 4,354,943 件
https://w.atwiki.jp/jpops/pages/19962.html
RUDE PRESSURESをお気に入りに追加 RUDE PRESSURESのリンク #bf Amazon.co.jp ウィジェット RUDE PRESSURESの報道 gnewプラグインエラー「RUDE PRESSURES」は見つからないか、接続エラーです。 RUDE PRESSURESとは RUDE PRESSURESの59%はハッタリで出来ています。RUDE PRESSURESの11%は汗と涙(化合物)で出来ています。RUDE PRESSURESの8%は心の壁で出来ています。RUDE PRESSURESの7%は希望で出来ています。RUDE PRESSURESの7%はマイナスイオンで出来ています。RUDE PRESSURESの6%は蛇の抜け殻で出来ています。RUDE PRESSURESの2%は月の光で出来ています。 RUDE PRESSURES@ウィキペディア RUDE PRESSURES Amazon.co.jp ウィジェット 掲示板 名前(HN) カキコミ すべてのコメントを見る ページ先頭へ RUDE PRESSURES このページについて このページはRUDE PRESSURESのインターネット上の情報を集めたリンク集のようなものです。ブックマークしておけば、日々更新されるRUDE PRESSURESに関連する最新情報にアクセスすることができます。 情報収集はプログラムで行っているため、名前が同じであるが異なるカテゴリーの情報が掲載される場合があります。ご了承ください。 リンク先の内容を保証するものではありません。ご自身の責任でクリックしてください。
https://w.atwiki.jp/prepress-tips/pages/176.html
最終更新日時: 2010/10/17 このページは 作成中です。 開発環境 教科書 GTK+ のライセンス openCV のライセンス ex01 ex01_gtk openCV に日本語文字を描画 開発環境 教科書 GTK+ のライセンス openCV のライセンス ex01 ex01_gtk openCV に日本語文字を描画 Edit 開発環境 開発環境は Ubuntu 10.04 LTS ( ubuntu LiveUSB で利用 )。 openCV は簡単にインストールできる。 その他に必要なものも ほぼ最初から入っている。( なくても簡単に追加インストールできる。 ) Tera Term から ssh でログインしたとき 最初に export DISPLAY= 0.0 戻すときは export DISPLAY=localhost 10.0 ヘルプ devhelp firefox http //opencv.jp/opencv-2svn/c/ コンパイル gcc -o [実行ファイル] [ソースファイル] `pkg-config gtk+-2.0 opencv --cflags --libs` 教科書 次の2冊。どちらも 初心者にはとてもわかりやすい。 入門GTK+ Essential OpenCV Programming with Visual C++ 2008 GTK+ のライセンス GTK+ のライセンスは GNU LGPL 2.1 。 このページのプログラムも このライセンスに準じる。 openCV のライセンス openCV のライセンスは 以下のとおり。 このページのプログラムも このライセンスに準じる。 license.txt IMPORTANT READ BEFORE DOWNLOADING, COPYING, INSTALLING OR USING. By downloading, copying, installing or using the software you agree to this license. If you do not agree to this license, do not download, install, copy or use the software. License Agreement For Open Source Computer Vision Library Copyright (C) 2000-2008, Intel Corporation, all rights reserved. Copyright (C) 2008-2010, Willow Garage Inc., all rights reserved. Third party copyrights are property of their respective owners. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met * Redistribution s of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistribution s in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * The name of the copyright holders may not be used to endorse or promote products derived from this software without specific prior written permission. This software is provided by the copyright holders and contributors "as is" and any express or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the Intel Corporation or contributors be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this software, even if advised of the possibility of such damage. ex01 画像を読み込み表示するプログラム。モノクロで表示する機能付き。 先ほどの書籍のサンプルを ubuntu で実行できるよう修正したもの。Essential OpenCV Programming with Visual C++ 2008 Edit ex01_index.txt * 変数の定義 / ? WIN ? img_src ? Form1 * 関数の定義 / ? btnLoad_Click // ? btnGray_Click // ? btnReset_Click // ? Form1_Load // ? Form1_FormClosed // ? Form1 - quit // / Form1_FormClosed ; * 処理 / / Form1 - new ? Form1 - vbox // ? Form1 - hbox1 // ? Form1 - btnLoad // ? Form1 - hbox2 // ? Form1 - btnGray // ? Form1 - btnReset // / Form1_Load ; / Form1 - run /name ex01.cpp ubuntu版 / ex01.c // このプログラムは 以下の書籍のサンプルを ubuntu で実行できるよう修正したものです。 // Essential OpenCV Programming with Visual C++ 2008 // http //www.cutt.co.jp/book/978-4-87783-232-2.html #include cv.h #include cxcore.h #include highgui.h #include gtk/gtk.h / 変数の定義 / 関数の定義 int main ( int argc , char* argv[] ) { gtk_init ( &argc , &argv ) ; / 処理 return 0 ; } /name 未指定 / /use ex01_detail.txt ex01_detail.txt - btn_Click / WIN / img_src / img_gray /?- btn_Click , WIN , img_src , img_gray * btnLoad_Click // void btnLoad_Click ( ) ? openFileDialog1 - new // / openFileDialog1 - show ? openFileDialog1 - result // / if( ! openFileDialog1 - result OK ) { openFileDialog1 - free ; return ; } ? fname - from openFileDialog1 // / openFileDialog1 - free / img_src - load fname / img_src - show / fname -free * btnGray_Click // void btnGray_Click ( ) ? img_gray - new // / img_gray - from img_src / img_gray - show / img_gray - free * btnReset_Click // void btnReset_Click ( ) / img_src - show * Form1_Load // void Form1_Load ( ) / WIN - new * Form1_FormClosed // void Form1_FormClosed ( ) / WIN - close / img_src - free * WIN / gchar* WIN = ex01 ; * WIN - new / cvNamedWindow( WIN , CV_WINDOW_AUTOSIZE ) ; * WIN - close / cvDestroyWindow( WIN ) ; * img_src / IplImage* img_src ; * img_src - free / cvReleaseImage( &img_src ) ; * img_src - load fname / img_src = cvLoadImage( fname , CV_LOAD_IMAGE_ANYDEPTH | CV_LOAD_IMAGE_ANYCOLOR ) ; * img_src - show / cvShowImage( WIN , img_src ) ; * img_gray - new // IplImage* img_gray ; * img_gray - from img_src / img_gray = cvCreateImage( cvGetSize( img_src ) , IPL_DEPTH_8U , 1 ) ; cvCvtColor( img_src , img_gray , CV_BGR2GRAY ) ; * img_gray - free / cvReleaseImage( &img_gray ) ; * img_gray - show / cvShowImage( WIN , img_gray ) ; ex01_detail.txt - openFileDialog1 / fname / Form1 /?- openFileDialog1 , fname , Form1 * openFileDialog1 - new // GtkWidget* openFileDialog1 ; openFileDialog1 = gtk_file_chooser_dialog_new( load image , GTK_WINDOW( Form1 ) , GTK_FILE_CHOOSER_ACTION_OPEN , GTK_STOCK_CANCEL , GTK_RESPONSE_CANCEL , GTK_STOCK_OPEN , GTK_RESPONSE_ACCEPT , NULL ); * openFileDialog1 - show / gtk_widget_show_all( openFileDialog1 ) ; * openFileDialog1 - result // gint openFileDialog1_result ; openFileDialog1_result = gtk_dialog_run( GTK_DIALOG( openFileDialog1 ) ) ; * openFileDialog1 - result OK / ( openFileDialog1_result == GTK_RESPONSE_ACCEPT ) * openFileDialog1 - free / gtk_widget_destroy( openFileDialog1 ) ; * fname - from openFileDialog1 // gchar* fname ; fname = gtk_file_chooser_get_filename( GTK_FILE_CHOOSER( openFileDialog1 ) ) ; * fname -free / g_free( fname ) ; * Form1 / GtkWidget* Form1 ; * Form1 - new / Form1 = gtk_window_new( GTK_WINDOW_TOPLEVEL ) ; gtk_window_set_title ( GTK_WINDOW( Form1 ) , Form1 ) ; gtk_widget_set_size_request( Form1 , 160 , 80 ) ; g_signal_connect( G_OBJECT( Form1 ) , destroy , G_CALLBACK( Form1_quit ) , NULL ) ; * Form1 - run / gtk_widget_show_all( Form1 ) ; gtk_main() ; * Form1 - quit // void Form1_quit ( ) gtk_main_quit () ; * Form1 - vbox // GtkWidget* vbox ; vbox = gtk_vbox_new( FALSE , 3 ) ; gtk_container_add( GTK_CONTAINER( Form1 ) , vbox ) ; gtk_container_set_border_width( GTK_CONTAINER( vbox ) , 6 ) ; * Form1 - hbox1 // GtkWidget* hbox1 ; hbox1 = gtk_hbox_new( FALSE , 5 ) ; gtk_box_pack_start( GTK_BOX( vbox ) , hbox1 , TRUE , FALSE , 2 ) ; * Form1 - hbox2 // GtkWidget* hbox2 ; hbox2 = gtk_hbox_new( FALSE , 0 ) ; gtk_box_pack_start( GTK_BOX( vbox ) , hbox2 , TRUE , FALSE , 2 ) ; * Form1 - btnLoad // GtkWidget* btnLoad ; btnLoad = gtk_button_new_with_label( 画像読込 ) ; gtk_box_pack_start( GTK_BOX( hbox1 ) , btnLoad , FALSE , FALSE , 6 ) ; g_signal_connect( G_OBJECT( btnLoad ) , clicked , G_CALLBACK( btnLoad_Click ) , NULL ) ; * Form1 - btnGray // GtkWidget* btnGray ; btnGray = gtk_button_new_with_label( モノクロ ) ; gtk_box_pack_start( GTK_BOX( hbox2 ) , btnGray , FALSE , FALSE , 6 ) ; g_signal_connect( G_OBJECT( btnGray ) , clicked , G_CALLBACK( btnGray_Click ) , NULL ) ; * Form1 - btnReset // GtkWidget* btnReset ; btnReset = gtk_button_new_with_label( 元に戻す ) ; gtk_box_pack_start( GTK_BOX( hbox2 ) , btnReset , FALSE , FALSE , 6 ) ; g_signal_connect( G_OBJECT( btnReset ) , clicked , G_CALLBACK( btnReset_Click ) , NULL ) ; ex01_gtk 画像を読み込み モノクロ変換し 保存するプログラム。 先ほどのプログラムに 保存機能を加え 全面的に書き直したもの。ソースを少し修正すれば チャネルミキシングなども試せる。 Edit ex01_gtk_index.txt * 変数の定義 / ? 画像ウィンドウ ? 操作パネル ? 元画像 ? 変換画像 * 関数の定義 / ? 画像読込ボタン - onClick ? 選択ダイアログ - new load // / 選択ダイアログ - show ? 選択ダイアログ - result // / if( 選択ダイアログ - cancel ) { 選択ダイアログ - free ; return ; } / 選択ダイアログ - set 元画像 fname ; 選択ダイアログ - free / 元画像 - free / 元画像 - new load / 画像ウィンドウ - 画像 free / 画像ウィンドウ - new 元画像 ; 画像ウィンドウ - show ? モノクロボタン - onClick / 変換画像 - free / 変換画像 - new ; 変換画像 - conv / 画像ウィンドウ - 画像 free / 画像ウィンドウ - new 変換画像 ; 画像ウィンドウ - show ? 元に戻すボタン - onClick / 画像ウィンドウ - 画像 free / 画像ウィンドウ - new 元画像 ; 画像ウィンドウ - show ? 画像保存ボタン - onClick / if( 変換画像 - 未変換 ) { return ; } ? 選択ダイアログ - new save // / 選択ダイアログ - show ? 選択ダイアログ - result // / if( 選択ダイアログ - cancel ) { 選択ダイアログ - free ; return ; } / 選択ダイアログ - set 変換画像 fname ; 選択ダイアログ - free / 変換画像 - save ? 操作パネル - quit // / 元画像 - free ; 変換画像 - free * 処理 / / 操作パネル - new ? 操作パネル - vbox // ? 操作パネル - hbox1 // ? 操作パネル - 画像読込ボタン // ? 操作パネル - 画像保存ボタン // ? 操作パネル - hbox2 // ? 操作パネル - モノクロボタン // ? 操作パネル - 元に戻すボタン // / 画像ウィンドウ - new / 画像ウィンドウ - new canvas ; 画像ウィンドウ - show / 操作パネル - run /name ex01.c gtk版 / ex01_gtk.c #include cv.h #include cxcore.h #include highgui.h #include gtk/gtk.h / 変数の定義 / 関数の定義 int main ( int argc , char* argv[] ) { gtk_init ( &argc , &argv ) ; / 処理 return 0 ; } /name 未指定 / /use ex01_gtk_detail.txt ex01_gtk_detail.txt - 元画像 / 変換画像 / 変換 /?- 元画像 * 元画像 / gchar* img_src_fname ; GdkPixbuf* img_src ; IplImage* img_src_cv ; * 元画像 - fname / img_src_fname * 元画像 - new load / img_src = gdk_pixbuf_new_from_file( img_src_fname , NULL ) ; ? 元画像 - w , h , ch , rs // img_src_cv = cvCreateImageHeader( cvSize( img_w, img_h ) , IPL_DEPTH_8U, img_ch ); img_src_cv - imageData = gdk_pixbuf_get_pixels( img_src ) ; g_free( img_src_fname ) ; * 元画像 - free / if( img_src != NULL ) { cvReleaseImageHeader( &img_src_cv ) ; g_object_unref( G_OBJECT( img_src ) ) ; } * 元画像 - w , h , ch , rs // *~ gint img_w ; gint img_h ; gint img_ch ; gint img_rs ; img_w = gdk_pixbuf_get_width( img_src ) ; img_h = gdk_pixbuf_get_height( img_src ) ; img_ch = gdk_pixbuf_get_n_channels( img_src ) ; img_rs = gdk_pixbuf_get_rowstride( img_src ) ; /?- 変換画像 * 変換画像 / gchar* img_conv_fname ; GdkPixbuf* img_conv ; IplImage* img_conv_cv ; * 変換画像 - fname / img_conv_fname * 変換画像 - 未変換 / ( img_conv == NULL ) * 変換画像 - new / ? 元画像 - w , h , ch , rs // img_conv_cv = cvCreateImage( cvSize( img_w, img_h ) , IPL_DEPTH_8U, 3 ); img_conv = gdk_pixbuf_new_from_data( img_conv_cv - imageData , GDK_COLORSPACE_RGB , FALSE , 8 , img_w , img_h , img_conv_cv - widthStep , NULL , NULL ); * 変換画像 - free / if( img_conv != NULL ) { cvReleaseImage( &img_conv_cv ) ; g_object_unref( G_OBJECT( img_conv ) ) ; } * 変換画像 - conv / / いろいろな変換 - rgb to gray * いろいろな変換 - rgb to bgr / cvCvtColor( img_src_cv , img_conv_cv , CV_RGB2BGR ) ; * いろいろな変換 - rgb to gray / IplImage* img_gray_cv ; img_gray_cv = cvCreateImage( cvSize( img_w, img_h ) , IPL_DEPTH_8U, 1 ) ; cvCvtColor( img_src_cv , img_gray_cv , CV_RGB2GRAY ) ; cvCvtColor( img_gray_cv , img_conv_cv , CV_GRAY2RGB ) ; cvReleaseImage( &img_gray_cv ) ; * いろいろな変換 - rgb to gray 2 / CvMat* rgb_2_bgr ; rgb_2_bgr = cvCreateMat( img_ch , img_ch , CV_32FC1 ) ; cvSetZero( rgb_2_bgr ) ; cvmSet( rgb_2_bgr , 0 , 2 , 1.0 ) ; cvmSet( rgb_2_bgr , 1 , 1 , 1.0 ) ; cvmSet( rgb_2_bgr , 2 , 0 , 1.0 ) ; CvMat* offset ; offset = cvCreateMat( img_ch , 1 , CV_32FC1 ) ; cvSet( offset , cvScalarAll( 0.0 ) , NULL ) ; // cvSetZero( offset ) IplImage* img_bgr_cv ; IplImage* img_gray_cv ; img_bgr_cv = cvCreateImage( cvSize( img_w, img_h ) , IPL_DEPTH_8U, img_ch ) ; img_gray_cv = cvCreateImage( cvSize( img_w, img_h ) , IPL_DEPTH_8U, 1 ) ; cvTransform( img_src_cv , img_bgr_cv , rgb_2_bgr , offset ) ; cvCvtColor( img_bgr_cv , img_gray_cv , CV_BGR2GRAY ) ; cvReleaseImage( &img_bgr_cv ) ; cvReleaseImage( &img_gray_cv ) ; cvReleaseMat( &rgb_2_bgr ) ; cvReleaseMat( &offset ) ; * 変換画像 - save / gdk_pixbuf_save( img_conv , img_conv_fname , tiff , NULL , compression , 5 , NULL // LZW ) ; g_free( img_conv_fname ) ; ex01_gtk_detail.txt - 画像ウィンドウ / 操作パネル / 選択ダイアログ /?- 画像ウィンドウ * 画像ウィンドウ / GtkWidget* WIN_img ; GtkWidget* WIN_canvas ; GtkWidget* WIN ; * 画像ウィンドウ - new / WIN = gtk_window_new( GTK_WINDOW_TOPLEVEL ) ; gtk_window_set_title( GTK_WINDOW( WIN ) , 画像 ) ; gtk_window_set_default_size( GTK_WINDOW( WIN ) , 400 , 300 ) ; gtk_window_move( GTK_WINDOW( WIN ) , 0 , 140 ) ; * 画像ウィンドウ - show / gtk_widget_show_all( WIN ) ; * 画像ウィンドウ - new canvas / WIN_canvas = gtk_scrolled_window_new( NULL , NULL ) ; gtk_scrolled_window_set_placement( GTK_SCROLLED_WINDOW ( WIN_canvas ) , GTK_CORNER_TOP_LEFT ) ; gtk_scrolled_window_set_policy ( GTK_SCROLLED_WINDOW ( WIN_canvas ) , GTK_POLICY_AUTOMATIC , GTK_POLICY_AUTOMATIC ) ; gtk_container_add ( GTK_CONTAINER( WIN ) , WIN_canvas ) ; * 画像ウィンドウ - new 元画像 / WIN_img = gtk_image_new_from_pixbuf( img_src ) ; gtk_scrolled_window_add_with_viewport( GTK_SCROLLED_WINDOW ( WIN_canvas ) , WIN_img ) ; * 画像ウィンドウ - new 変換画像 / WIN_img = gtk_image_new_from_pixbuf( img_conv ) ; gtk_scrolled_window_add_with_viewport( GTK_SCROLLED_WINDOW ( WIN_canvas ) , WIN_img ) ; * 画像ウィンドウ - 画像 free / if( WIN_img != NULL ) { gtk_object_destroy( GTK_OBJECT( WIN_img ) ) ; } /?- 操作パネル * 操作パネル / GtkWidget* Panel ; * 操作パネル - new / Panel = gtk_window_new( GTK_WINDOW_TOPLEVEL ) ; gtk_window_set_title ( GTK_WINDOW( Panel ) , 操作パネル ) ; gtk_widget_set_size_request( Panel , 170 , 80 ) ; g_signal_connect( G_OBJECT( Panel ) , destroy , G_CALLBACK( Panel_quit ) , NULL ) ; * 操作パネル - run / gtk_widget_show_all( Panel ) ; gtk_main() ; * 操作パネル - quit // void Panel_quit ( ) gtk_main_quit () ; * 操作パネル - vbox // GtkWidget* vbox ; vbox = gtk_vbox_new( FALSE , 3 ) ; gtk_container_add( GTK_CONTAINER( Panel ) , vbox ) ; gtk_container_set_border_width( GTK_CONTAINER( vbox ) , 6 ) ; * 操作パネル - hbox1 // GtkWidget* hbox1 ; hbox1 = gtk_hbox_new( FALSE , 0 ) ; gtk_box_pack_start( GTK_BOX( vbox ) , hbox1 , TRUE , FALSE , 2 ) ; * 操作パネル - hbox2 // GtkWidget* hbox2 ; hbox2 = gtk_hbox_new( FALSE , 0 ) ; gtk_box_pack_start( GTK_BOX( vbox ) , hbox2 , TRUE , FALSE , 2 ) ; * 操作パネル - 画像読込ボタン // GtkWidget* buttonLoad ; buttonLoad = gtk_button_new_with_label( 画像読込 ) ; gtk_box_pack_start( GTK_BOX( hbox1 ) , buttonLoad , FALSE , FALSE , 6 ) ; g_signal_connect( G_OBJECT( buttonLoad ) , clicked , / G_CALLBACK( & 画像読込ボタン - onClick ) , NULL ) ; * 操作パネル - 画像保存ボタン // GtkWidget* buttonSave ; buttonSave = gtk_button_new_with_label( 画像保存 ) ; gtk_box_pack_start( GTK_BOX( hbox1 ) , buttonSave , FALSE , FALSE , 6 ) ; g_signal_connect( G_OBJECT( buttonSave ) , clicked , / G_CALLBACK( & 画像保存ボタン - onClick ) , NULL ) ; * 操作パネル - モノクロボタン // GtkWidget* buttonGray ; buttonGray = gtk_button_new_with_label( モノクロ ) ; gtk_box_pack_start( GTK_BOX( hbox2 ) , buttonGray , FALSE , FALSE , 6 ) ; g_signal_connect( G_OBJECT( buttonGray ) , clicked , / G_CALLBACK( & モノクロボタン - onClick ) , NULL ) ; * 操作パネル - 元に戻すボタン // GtkWidget* buttonReset ; buttonReset = gtk_button_new_with_label( 元に戻す ) ; gtk_box_pack_start( GTK_BOX( hbox2 ) , buttonReset , FALSE , FALSE , 6 ) ; g_signal_connect( G_OBJECT( buttonReset ) , clicked , / G_CALLBACK( & 元に戻すボタン - onClick ) , NULL ) ; * 画像読込ボタン - onClick // void buttonLoad_onClick ( ) * & 画像読込ボタン - onClick / buttonLoad_onClick * モノクロボタン - onClick // void buttonGray_onClick ( ) * & モノクロボタン - onClick / buttonGray_onClick * 元に戻すボタン - onClick // void buttonReset_onClick ( ) * & 元に戻すボタン - onClick / buttonReset_onClick * 画像保存ボタン - onClick // void buttonSave_onClick ( ) * & 画像保存ボタン - onClick / buttonSave_onClick /?- 選択ダイアログ * 選択ダイアログ - new load // GtkWidget* file_dialog ; file_dialog = gtk_file_chooser_dialog_new( 画像選択 , GTK_WINDOW( Panel ) , GTK_FILE_CHOOSER_ACTION_OPEN , GTK_STOCK_CANCEL , GTK_RESPONSE_CANCEL , GTK_STOCK_OPEN , GTK_RESPONSE_ACCEPT , NULL ); * 選択ダイアログ - new save // GtkWidget* file_dialog ; file_dialog = gtk_file_chooser_dialog_new( 画像選択 , GTK_WINDOW( Panel ) , GTK_FILE_CHOOSER_ACTION_SAVE , GTK_STOCK_CANCEL , GTK_RESPONSE_CANCEL , GTK_STOCK_SAVE , GTK_RESPONSE_ACCEPT , NULL ); gtk_file_chooser_set_current_name( GTK_FILE_CHOOSER( file_dialog ) , untitled.tif ) ; gtk_file_chooser_set_do_overwrite_confirmation( GTK_FILE_CHOOSER( file_dialog ) , TRUE ) ; * 選択ダイアログ - show / gtk_widget_show_all( file_dialog ) ; * 選択ダイアログ - free / gtk_widget_destroy( file_dialog ) ; * 選択ダイアログ - result // gint file_dialog_result ; file_dialog_result = gtk_dialog_run( GTK_DIALOG( file_dialog ) ) ; * 選択ダイアログ - cancel / ( file_dialog_result != GTK_RESPONSE_ACCEPT ) * 選択ダイアログ - set 元画像 fname / / 元画像 - fname = gtk_file_chooser_get_filename( GTK_FILE_CHOOSER( file_dialog ) ) ; * 選択ダイアログ - set 変換画像 fname / / 変換画像 - fname = gtk_file_chooser_get_filename( GTK_FILE_CHOOSER( file_dialog ) ) ; openCV に日本語文字を描画 openCV に GTK+ で日本語文字を描画する。 draw_text.c #include cv.h #include cxcore.h #include highgui.h #include gtk/gtk.h // gcc -o draw_text draw_text.c `pkg-config gtk+-2.0 opencv --cflags --libs` // ./draw_text int main ( int argc , char* argv[] ) { gtk_init ( argc , argv ) ; gint img_w ; gint img_h ; // サイズ img_w = 260 ; img_h = 60 ; IplImage* img_org_cv ; // 元の画像 - openCV で作成 img_org_cv = cvCreateImage( cvSize( img_w, img_h ) , IPL_DEPTH_8U, 3 ); cvSet( img_org_cv , cvScalarAll( 255 ) , NULL ) ; GdkPixbuf* img_org ; // 元の画像 - pixbuf に変換 img_org = gdk_pixbuf_new_from_data( img_org_cv - imageData , GDK_COLORSPACE_RGB , FALSE , 8 , img_w , img_h , img_org_cv - widthStep , NULL , NULL ); GdkPixmap* pixmap ; // 元の画像 - pixmap に変換 gdk_pixbuf_render_pixmap_and_mask( img_org , pixmap , NULL , 255 ) ; GdkColormap* colormap ; GdkGC* gc ; colormap = gdk_drawable_get_colormap( GDK_DRAWABLE( pixmap ) ) ; gc = gdk_gc_new( GDK_DRAWABLE( pixmap ) ) ; PangoFontDescription* font_desc ; // 描画情報 - フォントを指定 font_desc = pango_font_description_from_string( Arial Bold 14 ) ; gchar* markup_str ; // 描画情報 - 内容を指定 markup_str = g_strdup_printf( %s%s%s\x00 , span font= 14 日本語文字を /span , span background = red foreground= yellow font= 20 描画 /span , span font= 14 してみる /span , ) ; PangoLayout* pango_layout ; // 描画情報 - pixmap に描画 GtkWidget* area ; area = gtk_drawing_area_new() ; pango_layout = gtk_widget_create_pango_layout( GTK_WIDGET( area ) , ) ; pango_layout_set_markup( pango_layout , markup_str , -1 ) ; gdk_draw_layout( GDK_DRAWABLE( pixmap ) , gc , 10 , 10 , pango_layout ) ; gtk_object_destroy( GTK_OBJECT( area ) ) ; g_object_unref( G_OBJECT( colormap ) ) ; g_object_unref( G_OBJECT( gc ) ) ; g_free( markup_str ) ; GdkPixbuf* img_text ; // 描画情報 - pixbuf に変換 img_text = gdk_pixbuf_get_from_drawable( NULL , GDK_DRAWABLE( pixmap ) , NULL , 0 , 0 , 0 , 0 , img_w , img_h ) ; IplImage* img_text_cv ; // 描画情報 - openCV に変換 img_text_cv = cvCreateImageHeader( cvSize( img_w , img_h ) , IPL_DEPTH_8U, 3 ); img_text_cv - imageData = gdk_pixbuf_get_pixels( img_text ) ; cvCvtColor( img_text_cv , img_text_cv , CV_RGB2BGR ) ; // 画面に表示 - openCV で cvNamedWindow( openCVに GTK+で描画 , CV_WINDOW_AUTOSIZE ) ; cvShowImage( openCVに GTK+で描画 , img_text_cv ) ; cvWaitKey( 0 ) ; cvDestroyWindow( openCVに GTK+で描画 ) ; // 終了 cvReleaseImageHeader( img_text_cv ) ; g_object_unref( G_OBJECT( img_text ) ) ; cvReleaseImage( img_org_cv ) ; g_object_unref( G_OBJECT( img_org ) ) ; return 0 ; } Edit
https://w.atwiki.jp/1001/pages/41.html
SVD(Dragunov) 1963年にソビエト軍が制式採用した、狙撃用のセミオート式自動小銃。 第二次世界大戦でスナイパーの有効性を知ったソビエト軍は、小隊規模で 狙撃銃を装備させた。Ak-47を元に設計されただけに、信頼性が高いが 他の狙撃銃に比べ命中精度は劣る。 7.62mm×54R弾を使用し、10発入りの弾倉を使用する。 動作方式は AK-47と同様のガス圧利用式・ターンボルトであるが機構的に若干異なり、半自動射撃専用となっている。赤外線探知機能付4倍スコープを原則装備させるなど、豪華な運用だった。 現在では、ルーマニアが使用しているほか、北朝鮮が少数採用している程度しかない。
https://w.atwiki.jp/hmiku/pages/30861.html
【登録タグ 164CD 40㍍PCD 666CD CD CDE CDコンピレーション CRUSHER-PCD Circus-PCD DECO*27CD Last Note.CD YMCD buzzGCD otetsuCD yukkedoluceCD うみろCD ささくれPCD すこっぷCD なぎみそCD ゆちゃPCD シグナルPCD ニャンシスCD ハツ子CD フェイPCD 全国発売 左CD】 前作 本作 次作 EXIT TUNES PRESENTS GUMical from Megpoid EXIT TUNES PRESENTS THE BEST OF GUMI from Megpoid EXIT TUNES PRESENTS Gumissimo from Megpoid -10th ANNIVERSARY BEST- DECO*27 164 Last Note. 40㍍P こじろー buzzG ささくれP ゆちゃP YM otetsu 666 フェイP Gigio すこっぷ シグナルP Deadman yukkedoluce CRUSHER-P Circus-P 左 なぎみそ ハツ子 ニャンシス 流通:全国 発売:2015年2月4日 価格:¥2,100(税抜) レーベル:EXIT TUNES CD紹介 VOCALOID 「Megpoid(GUMI)」のすべてが詰まったベストアルバム!! EXIT TUNESが贈る、GUMIベストアルバムが遂に発売!!総再生回数1000万回超!GUMIの超有名楽曲ばかりを詰め込んだ永久保存版! ジャケットイラストは歴代のジャケットイラストを担当した 左氏 ・ 小原トメ太氏 ・ なぎみそ氏 ・ hatsuko氏 ・ のん氏 ・ 富岡二郎氏 ・ ちま氏 が手掛ける。 上記の歴代豪華絵師達が描くアナザージャケットが封入される。 曲目 モザイクロール / DECO*27 天ノ弱 / 164 セツナトリップ / Last Note. シリョクケンサ / 40mP ユクエシレズ / こじろー しわ / buzzG ぼくらの16bit戦争 / sasakure.UK ポーカーフェイス / ゆちゃP 十面相 / YM カーニバル / otetsu ダヴィンチの告白 / 666 幻奏歌 / フェイP ケッペキショウ / すこっぷ 会いたい / Dios/シグナルP 林檎売りの泡沫少女 / yukkedoluce 【ボーナストラック】ECHO / CIRCRUSH(CircusP+Crusher-P) 【ボーナストラック】アリガトロス / YM 【ボーナストラック】キドアイラク / ニャンシス (arranged by Nem) (バンドブラザーズPコラボ楽曲) リンク 公式サイト EXIT TUNES amazon コメント 今までに入ってた曲の中から選ばれて再収録される感じなのかな? -- 名無しさん (2014-11-24 15 23 28) 新曲はないのか。 -- 名無しさん (2014-11-26 23 14 40) 新曲あるし、はいるよ? -- 名無しさん (2014-11-29 07 48 28) ベストとか新しいな -- 名無しさん (2014-12-03 16 53 48) 新曲は今の所「ECHO」だけ? -- 御坂 (2014-12-07 15 55 42) ネメシスの銃口入りそう -- 名無しさん (2014-12-10 17 38 56) 一応補足。"etc. now making, coming soon!"となっていますが、ニンテンドー3DSソフト「大合奏!バンドブラザーズP」で作曲された曲が収録されるようです。 情報元:ttp //9129suppon.com/506/ -- 名無しさん (2014-12-13 15 51 41) いままでのアルバムのまとめ? -- 良太 (2014-12-13 16 34 27) 受験終わってこれ聴いて大泣きしたい!! -- うれし涙だといいな… (2015-01-02 00 53 34) 会いたいと天ノ弱は鉄板だよなぁ -- 名無しさん (2015-01-15 23 16 13) TRACK LIST決まったらしい -- 名無しさん (2015-01-21 16 31 46) モザイクロールと16bit戦争が追加されていましたね -- 名無しさん (2015-01-21 16 36 51) お、ボーナストラック楽しみ -- 名無しさん (2015-01-21 19 07 53) モザイクロールとはびっくり -- 名無しさん (2015-01-22 09 31 42) GUMIの名曲揃いですね。YMさんの曲が気になります…。 -- 御坂 (2015-01-22 13 28 55) ささくれPがやっと入ってくれたんやな。同じEXITから発売してたSTARDOM2以来の収録ですな。DECO*27さんはSTARDOM3の頃から入ってなくて心配してたけど、最近はEXITにも収録されるようになったから嬉しいです。 -- 不明P (2015-02-04 11 28 11) EXITシリーズの中ではこれが一番好き。 -- 初心者です。 (2018-10-18 18 53 35) 最終コメントこれてwww -- 名無しさん (2018-10-18 18 54 17) 名前 コメント
https://w.atwiki.jp/pins-room/pages/273.html
Bolton Wanderers Football Club England Menu England Premier League Arsenal FC Aston Villa FC Birmingham City FC Blackburn Rovers FC Bolton Wanderers FC Charlton Athletic FC Chelsea FC Derby County FC Everton FC Fulham FC Hull City AFC Liverpool FC Manchester City FC Manchester United FC Middlesbrough FC Newcastle United FC Nottingham Forest FC Portsmouth FC Reading FC Sheffield United FC Stoke City FC Sunderland AFC Tottenham Hotspur FC Watford FC West Bromwich Albion FC West Ham United FC Wigan Athletic FC England Menu
https://w.atwiki.jp/stickranger/pages/851.html
Gunnerの武器一覧 ←M9 grenade Napalm bomb→ power laser gun 動画 STR142,MAG20 Guide s Card 5 AT 24-36 AGI 20-30 RANGE 50 TYPE fire MP 0 AT 0-0 $$ 45 詳細 laser beam gunの上位版。 敵や地形を貫通する能力は変わらず、同じ感覚で使うことができる。 さらに上位にはslow laser gunがある。 ドロップする敵 Sf8 本編おススメ度 ★ ★ ★ ★ ★ VSおススメ度 ☆ ☆ ☆ ☆ ☆ オススメ合成アイテム Guide s Card laser beam gun同様、LVの高いものを付ける場合は強力な誘導性に注意。
https://w.atwiki.jp/sihainin/
このwikiはPlague Inc.の非公式wikiです。 概要 全世界を感染させろ! あなたの作った病原体が「患者第 1 号」に感染した。 死に至る伝染病を人類の抵抗に適応、進化させ人類の歴史に幕を閉じろ! 「Plague Inc. - 伝染病株式会社」は高度な戦略と怖いくらいにリアルなシミュレーションをユニークに組み合わせたゲームです。 高い完成度と革新的なゲームプレイ、iPhone と iPad の為にゼロから作られた 「Plague Inc. - 伝染病株式会社」は戦略ゲームのジャンルを進化させ、モバイルでのゲーム体験とあなた自身をも次のレベルへと押し上げます。これはあなた対世界の戦い、最恐だけが生き残る! ◈◈◈ 世界中で 2 億回以上プレイされた人気 No.1 ゲーム ◈◈◈ 「Plague Inc. - 伝染病株式会社」は世界中から50 万以上の 5 つ星評価を受け、また The Economist、New York Post 、Boston Herald 、The Guardian 、London Metro など数々のメディアに取り上げられました! 「Plague Inc. - 伝染病株式会社」の開発者がアメリカ疾病予防管理センターのあるアトランタに招かれ、ゲーム内の伝染病モデルについてお話させていただきました! ▲ 「このゲームはリアリティーのある世界を作り、人々を深刻な公衆衛生に関するトピックへと引きこませる」 アメリカ疾病予防管理センター ▲ 「2012 年最高のタブレットゲーム」 - New York Daily News ▲ 「 Plague Inc. はあらゆる方法であなたを惹きつけ離さない」 - Touch Arcade ▲ 「 Plague Inc. のハイレベルなクオリティを否定することはできない」 - Modojo ▲ 「 Plague Inc. がこんなに面白いのはおかしい」 - London Metro ▲ 「『ちょっとした楽しみ』の名の下に、あなたに世界の破滅を望ませる」 - Pocket Lint ▲ 「 Plague Inc. のゲームプレイは伝染性である」 - Slide to Play ▲ Winner「ゲームオブザイヤー」 - Pocket Gamer ▲ 何 10 億もの人間を殺す事がこれ程までに楽しかったことが未だかつてあっただろうか」 - IGN ◈◈◈ 特徴 ● 美麗な Retina クオリティのグラフィックと洗練されたインターフェース ● 非常に詳細かつ超現実的な世界と高度な AI ● 包括的なゲーム内のヘルプとチュートリアルシステム ● 12 種類の伝染病と多彩な戦略をマスター ● 50 か国以上を感染可能 ● 数百種もの病原体の形質進化 ● 世界各地で起きる数千のイベント ● セーブ、ロード機能完備 ● スコアボードと実績をフルサポート ● マインドコントロール伝染病の脳食い虫とゾンビを生み出すネクロアウイルス、スピードランと実際の出来事に基づいたシナリオの拡張パックを追加アップデート! 「Plague Inc. - 伝染病株式会社」は英語、ドイツ語、スペイン語、ブラジル語、ポルトガル語、フランス語、日本語、韓国語、ロシア語でのプレイが可能です。(続々追加予定) 2015 年 に最も人気があった iPhone ゲーム第 15 位を祝ってスペシャルセール価格実施中! ◈◈◈ Facebook でファンになろう! www.facebook.com/PlagueInc Twitter でフォローしよう! www.twitter.com/NdemicCreations アップデート情報 Plague Inc. 変異 16 発見 - ロイヤル・アップデート Plague Inc. がイギリス女王陛下から賞を授与されたことをご存知でしたか? 「The Queen’s Enterprise Award for Innovation」の受賞を祝して、エキサイティングな新ンテンツでいっぱいの「ロイヤル・アップデート」をご用意しました。 感染性新インターフェース Plague Inc. のインターフェースを816 %以上改善! 全体に再設計を施し現代風に - 美味しそうなビジュアルに携帯電話を舐めたくなっちゃうかも! 新シナリオ:究極のボードゲーム 伝染病とは全く関係ない根本から異なるこのシナリオではベストセラーのボードゲームを作ってもらうぞ!投資家達はあなたオリジナルのゲームのデザイン、生産、流通の準備をするために 2 年の猶予を与えた。 - ベストセラーヒットなるか? 新シナリオ:科学の否定 世界の人々はもはや科学を信じていない…薬や伝染病さえも。ある国が科学者達に聖域を与え人類を救おうとしている。 その他 新たな実績およびマイナーなバグ修正、カスタムシナリオの大量追加。 ※衛生上の理由からゲームのプレイ前後の手洗いを推奨しています。 ※当wikiは非公式の攻略wikiです。情報の妥当性や正確性について保証するものではなく、一切の責任を負いかねます。 ※当wikiを利用することによって生じるいかなる損害も当サイトでは補償致しません。 ※ご利用につきましては自己責任となりますのでご注意ください。 ※また、当wikiおよびwiki管理人はNdemic Creations及びMiniclip SAとは一切関係がありません。wiki管理人にエラーなどについて問い合わせないようお願いします。 ※文章の著作権は当wikiにあります。内容の複写、転載を禁じます。
https://w.atwiki.jp/iracing_wiki/pages/34.html
あなたはどっち派? 選択肢 投票数 投票 ロード派 11 オーバル派 2 どっちも 0 ロードカーであなたが一番使っている車は何ですか?(一人2票まで) 選択肢 投票数 投票 Scca Spec Racer Ford 1 MX-5 Cup&Roadster 6 Pontiac Solstice 0 Chevrolet Corvette C6R 1 Ford V8 Supercar 0 Ford GT 0 FordMustang FR500S 2 HPD ARX-01C 0 Lotus79 0 Radical SR8 1 Riley Prototype 0 Skip Barber Formula 2000 0 StarMazda 0 Volkswagen Jetta TDI Cup 0 Williams-TOYOTA FW31 0 オーバルカーであなたが一番使っている車は何ですか?(一人2票まで) 選択肢 投票数 投票 Legends Ford'34 Coupe 1 Street Stock 3 Chevrolet Impala 1 Chevrolet Impala Class B&2009 0 Chevrolet Monte Carlo SS 0 Chevrolet Silverado 0 Dallara Indycar 2 SK Modiffied&Tour Modified 0 Silver Crown 0 Sprint Car 0 好きなロードコースはどこですか?(一人3票まで) 選択肢 投票数 投票 Mazda Raceway Laguna Seca 3 Lime Rock Park 2 Okayama International Circuit 5 Summit Point Raceway 4 Barber Motorsports Park 0 Brands Hatch 0 Circuit De Spa-Francorchamps 0 Darlington Raceway 0 Infineon Raceway 2 MID-OHIO Sports Car Course 2 Mosport International Raceway 0 Phillip Island Circuit 0 Phoenix International Raceway 0 Pocono Raceway 0 Richmond International Raceway 0 Road America 2 Road Atlanta 1 Sebring International Raceway 1 Silverstone Circuit 0 Suzuka International Racing Course 1 Virginia International Raceway 0 Watkins Glen International 1 Circuit Park Zandvoort 0 好きなオーバルコースはどこですか?(一人3票まで) 選択肢 投票数 投票 Centripetal Circuit 0 Charlotte Motor Speedway 2 Lanier National Speedway 1 Oxfor Plains Speedway 0 South Boston Speedway 1 Thompson Intl Speedway 0 Atlanta Motor Speedway 0 Bristol Motor Speedway 0 Chicagoland Speedway 0 Concord Speedway 0 Daytona International Speedway 2 Dover Intl Speedway 0 Homestead Miami Speedway 0 Indianapolis Motor Speedway 0 Iowa Speedway 0 Jack Arute's Stafford Motor Speedway 0 Las Vegas Motor Speedway 0 Martinsville Speedway 0 Michigan International Speedway 1 New Hampshire Motor Speedway 0 Talladega Superspeedway 0 Texas Motor Speedway 0 The milwaukee Mile 0 TOYOTA Speedway at Irwindale 0 USA International Speedway 0
https://w.atwiki.jp/satoschi/pages/217.html
セイリッシュ諸語 Salishan languages【sal】 Bella Coola —ベーラ・コーラ諸語〔ベラ・クーラ諸語〕 Bella Coola【blc】—ベーラ・コーラ語 Central Salish —中央セイリッシュ諸語〔中央サリシュ諸語〕 Halkomelem —ハルコメレム語 Halkomelem【hur】—ハルコメレム語 Nooksack —ヌクサック語 Nooksack †【nok】—ヌクサック語 † Northern《Central Salish》— Comox【coo】—コーモックス語 Pentlatch †【ptw】—ペントラッチ語 † Sechelt【sec】—セチェルト語 Squamish —スクワミッシュ語〔スクォミッシ語〕 Squamish【squ】—スクワミッシュ語 Straits —ストレイツ諸語 Clallam【clm】—クララム語 Salish, Straits【str】—ストレイツ・セイリッシュ語 Twana —トワナ諸語〔トァナ諸語〕 Lushootseed【lut】—ルスフットシード語 Skagit【ska】—スカジット語 Salish, Southern Puget Sound【slh】—南部ピュジェット湾セイリッシュ語 Snohomish【sno】—スノホミッシュ語 Twana †【twa】—トワナ語 † Interior Salish —内陸セイリッシュ諸語〔内陸サリシュ諸語〕 Northern Interior Salish —北部内陸セイリッシュ諸語 Lillooet【lil】—リルエット語 Shuswap【shs】—シュスワップ語 Thompson【thp】—トンプソン語 Southern Interior Salish —南部内陸セイリッシュ諸語 Columbia-Wenatchi【col】—コロンビア=ウェナチ語 Coeur d Alene【crd】—クーダレン語 Kalispel-Pend D oreille【fla】—カリスペル=ペンド・オリール語 Okanagan【oka】—オカナガン語 Spokane【spo】—スポケーン語 Tillamook —ティラムーク語 Tillamook †【til】—ティラムーク語 † Tsamosan — Inland —内陸部諸語 Chehalis, Lower †【cea】—下チェハリス語 † Chehalis, Upper †【cjh】—上チェハリス語 † Cowlitz †【cow】—コーリッツ語 † Maritime —沿海部諸語 Quinault †【qun】—キノールト語 † 言語名別称 alternate names サリシュ諸語
https://w.atwiki.jp/toho/pages/2144.html
From Oneday to Presence サークル:Cherry Lunaburst Number Track Name Arranger Original Works Original Tune Length 01 メイドと紅の鍵盤 Cherry Lunaburst 東方紅魔郷 メイドと血の懐中時計 [03 19] 02 Piece of HumptyDumpty (NEWversion) Cherry Lunaburst 東方紅魔郷 U.N.オーエンは彼女なのか? [03 24] 03 ハネマワルチェン (withehopping cat) Cherry Lunaburst 東方妖々夢 ティアオイエツォン [01 55] 04 天照ラス陽昇ノ歴史 Cherry Lunaburst 東方永夜抄 プレインエイジア [03 30] 05 フラワリングラウンド (NEWversion) Cherry Lunaburst 東方花映塚 フラワリングナイト [03 34] 06 東方文花帖 medley Cherry Lunaburst 東方文花帖 天狗の手帖 [07 14] 風の循環 天狗が見ている 東の国の眠らない夜 レトロスペクティブ京都 風神少女 07 全ての鬼に涙を、全ての亡骸に拳を Cherry Lunaburst 東方萃夢想 御伽の国の鬼が島 [03 52] 08 I miss you...but I m here Cherry Lunaburst 東方怪綺談 久遠の楽園 [02 32] 東方紅魔郷 紅楼 詳細 打ち込みによる東方ピアノアレンジ。 発狂系から、技巧系とかまったり系も。 博麗神社例大祭5(2008/5/25)にて頒布 イベント価格:600円 ショップ価格:788円(税込) レビュー 名前 コメント